package com.wlt.result;

import lombok.AllArgsConstructor;
import lombok.Data;

import java.io.Serializable;

@Data
@AllArgsConstructor
public class BaseResult<T> implements Serializable
{
    private Integer code;       // 状态码（200成功，其它失败）
    
    private String message;     // 结果信息
    
    private T data;             // 数据
    
    /**
     * 构建普通的成功结果
     */
    public static <T> BaseResult<T> success ()
    {
        return new BaseResult<>(CodeEnum.SUCCESS.getCode(), CodeEnum.SUCCESS.getMessage(), null);
    }
    
    
    /**
     * 构建带有数据的成功结果
     */
    public static <T> BaseResult<T> success (T data)
    {
        return new BaseResult<>(CodeEnum.SUCCESS.getCode(), CodeEnum.SUCCESS.getMessage(), data);
    }

//    public static <T> BaseResult<T> fail ()
//    {
//
//    }
}
